Fewer Examples per Step

Mini-batches and Epochs


미니배치(mini-batch)는 한 번의 갱신에 함께 쓰는 자료의 일부이고, 에포크(epoch)는 자료 전체를 한 번 사용한 단위다. 미니배치 크기 B가 에포크당 갱신 횟수, 한 번의 계산량, 평균 그래디언트의 분산을 함께 정한다.

반복(iteration)매개변수 갱신 한 번이며 미니배치 하나를 쓴다.
에포크(epoch)자료 전체를 한 번 본 단위이며 갱신 ⌈n/B⌉번을 포함한다.
Var(g_B) = σ²/B같은 θ에서 독립 추출한 평균의 분산이며 B가 커질수록 줄어든다.

미니배치 크기가 한 에포크의 갱신 횟수를 정한다

관측 20개를 섞은 뒤 B개씩 자를 때 B를 바꾸면 묶음의 경계, 에포크당 갱신 횟수, 마지막 묶음의 크기가 바뀐다.

칸 하나가 관측 하나이고 숫자는 섞은 뒤의 원래 관측 번호다. 같은 색 띠로 묶인 칸이 한 번의 갱신에 쓰는 미니배치이며, 마지막 묶음은 더 작을 수 있다.

정렬된 자료를 섞지 않고 자르면 묶음이 한 범주로 채워진다

자료 순서를 바꾸면 B = 5인 네 묶음의 범주 구성과 한 범주로만 채워진 묶음 수가 바뀐다. 범주 가와 나가 10개씩 있다.

파란 칸은 범주 가, 초록 칸은 범주 나다. 띠 하나가 B = 5인 미니배치이고 오른쪽 수는 그 묶음의 범주 나 비율이다.

B가 커지면 평균 그래디언트의 분산은 줄고 한 번의 계산량은 늘어난다

n = 60,000, p = 784인 선형 모델에서 B를 바꾸면 에포크당 갱신 횟수와 한 번의 계산량 규모 Bp가 바뀐다. 분산은 σ² = 9에서 독립 추출 근사 σ²/B로 비교하되, 자료 전체를 쓰는 B = n에서는 추출 변동이 0이다.

행은 미니배치 크기이고 초록 테두리 행이 고른 B다. B < n의 분산은 독립 추출 근삿값이며, B = n의 실제 추출 변동은 0이다. Bp는 비용 규모이지 실제 곱셈 횟수나 실행 시간이 아니다.